// 📘 文件名：control_flow_example.dart
// Dart 控制流语句示例：if-else、switch、for、while、do-while

void main() {
  print("===== Dart 控制流语句演示开始 =====\n");

  // ===============================
  // 1️⃣ if - else 条件判断
  // ===============================
  int score = 85;

  if (score >= 90) {
    print("成绩优秀 🌟");
  } else if (score >= 60) {
    print("成绩及格 👍");
  } else {
    print("成绩不及格 ❌");
  }

  // 也可以用三元表达式
  String result = score >= 60 ? "通过" : "不通过";
  print("三元表达式结果: $result\n");

  // ===============================
  // 2️⃣ switch - case 分支结构
  // ===============================
  String day = "Wednesday";

  switch (day) {
    case "Monday":
      print("今天是星期一，加油！💪");
      break;
    case "Wednesday":
      print("今天是星期三，周中冲刺！⚡");
      break;
    case "Friday":
      print("今天是星期五，快下班啦～ 🎉");
      break;
    default:
      print("这是普通的一天 😴");
  }
  print("");

  // ===============================
  // 3️⃣ for 循环
  // ===============================
  print("经典 for 循环：");
  for (int i = 1; i <= 5; i++) {
    print("当前 i = $i");
  }
  print("");

  // ===============================
  // 4️⃣ for-in 循环（遍历集合）
  // ===============================
  List<String> fruits = ["🍎", "🍌", "🍊"];
  print("for-in 循环遍历 List：");
  for (String fruit in fruits) {
    print("水果：$fruit");
  }
  print("");

  // ===============================
  // 5️⃣ forEach 遍历（函数式）
  // ===============================
  print("forEach 遍历 List：");
  fruits.forEach((item) {
    print("水果（forEach）：$item");
  });
  print("");

  // ===============================
  // 6️⃣ while 循环
  // ===============================
  print("while 循环示例：");
  int count = 3;
  while (count > 0) {
    print("倒计时：$count");
    count--;
  }
  print("发射！🚀\n");

  // ===============================
  // 7️⃣ do-while 循环
  // ===============================
  print("do-while 循环示例：");
  int number = 0;
  do {
    print("当前 number = $number");
    number++;
  } while (number < 3);
  print("");

  // ===============================
  // 8️⃣ 综合逻辑示例
  // ===============================
  print("综合示例：遍历数字并分类输出");
  List<int> nums = [1, 2, 3, 4, 5, 6];

  for (int n in nums) {
    if (n % 2 == 0) {
      print("$n 是偶数");
    } else {
      print("$n 是奇数");
    }

    switch (n) {
      case 1:
        print("→ 这是第一个数字");
        break;
      case 5:
        print("→ 快到结尾啦");
        break;
      default:
        print("→ 继续循环中...");
    }
  }

  print("\n===== 控制流语句演示结束 =====");
}
